package com.jt.mapper;

import com.jt.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper //1.将接口交给Mybatis,之后将Mybatis交给Spring容器管理
//2.动态代理机制,为接口创建代理对象,Map<userMapper,JDK代理对象>
//3.接口和实现类,为什么只有接口没有实现类?因为所有的aql语句都要写到映射文件中
public interface UserMapper {

    //指定接口方法 查询demo_user的全部数据
    List<User> findAll();

    void saveUser(User user);

    int saveUser2(User user);

    void updateUserById(User user);


    void deleteUserByName(String name);

    User findUserById(int id);

    List<User> findUserByMap(Map map);

    List<User> findByColumn(Map map);

    List<User> findUserByMId(@Param("minId") int minId, @Param("maxId") int maxId);

    List<User> findUserByLike(String name);

    

    List<User> findUserByInMap(Map array);


    List<User> findUserByIn(Integer[] array);

    List<User> findUserByInlist(List ids);

}